package com.frogs.ucenter.util;

/**
 * 系统状态码
 *
 * @author tangjun@mail.39.net
 * @version 2012-4-5 - 下午02:32:52
 * 
 */
public enum SysStatusEnum {

    // 0~999保留为系统码
    SUCCESS(1, "操作成功"),
    FAIL(0, "操作失败"),

    // 1000~1999与用户信息相关状态码
    EMAIL_ERR(1000, "邮箱格式错误"), //
    PASSWORD_ERR(1001, "密码格式错误"), //
    PASSWORD_ERR_SAME(1008, "两次密码不一致"), //
    NAME_DUP(1002, "用户名重复"), //
    NAME_PASS_ERR(1003, "用户名或密码错误"),
    NAME_NULL(1004, "用户名为空"), //
    PASSWORD_NULL(1005, "密码为空"), //
    EMAIL_NULL(1006, "邮箱为空"), //
    REGISTER_ERR(1007, "注册失败"),
    LOGIN_ERR(1008, "登录失败"),
    PHONE_CODE_ERR(1009, "手机验证码为空"),
    VALIDATE_CODE_ERR(1010, "验证码有误"),
    PHONE_ERR(1011, "手机号码有误"),

    // 2000~2999与活动信息相关状态码
    QUEUE_ADD_FAIL(2000, "参加活动失败"), //
    ACT_ADD_SUCC(2001, "发起活动失败"),//
    
    // 3000-3999为用户基础信息相关状态码
    NOT_LOGIN_ERR(3000,"用户未登陆"),
    USER_ID_ERR(3001,"缺少用户ID或不存在")
    ;

    /*
      * (non-Javadoc)
      *
      * @see java.lang.Enum#toString()
      */
    public String toString() {
        StringBuilder builder = new StringBuilder();
        builder.append("(" + name() + ":" + getCode() + "-" + getMsg() + ")");
        return builder.toString();
    }

    ;

    private SysStatusEnum(int code, String msg) {
        this.code = code;
        this.msg = msg;
    }

    /**
     * 返回状态码
     *
     * @return the code
     */
    public int getCode() {
        return code;
    }

    /**
     * 返回状态描述
     *
     * @return the msg
     */
    public String getMsg() {
        return msg;
    }

    /**
     * 状态码
     */
    private int code;
    /**
     * 状态描述
     */
    private String msg;

}
